求SQL语句```了解详情请进

来源:百度知道 编辑:UC知道 时间:2024/06/04 10:45:09
表A有a1到a6六个字段,a1到a4是KEY,为必须.a5,a6是非必须项.
求:每一组(a1,a2)下,有多少组(a5,a6)
想要的结果就是:
SELECT a1,a2,COUNT(DISTINCT(a5,a6)) FROM A GROUP BY a1,a2
但是COUNT(DISTINCT(a5,a6))这样的写法是通不过的.求正确写法

呵呵,a1到A4都是KEy只能说明a1,a2,a3,a4的每一个组合都是唯一的,并不能说明a1,a2是唯一的
select a1,a2, count(*)
from (select distinct a1,a2,a5,a6 from A) as A1
group by a1,a2
这样就可以!
复制过去就能看到答案了

你的意思不是很明白,能否说得详细一点?
a1到a4都是KEY? 那就说这四列都是唯一的,不存在重复值,GROUP BY a1,a2还有什么意义呢?

还是不明白你到底想实现什么功能!

我怎么就没有听懂呢

自身连接试试

SELECT a1,a2,Cout(*) FROM A Where a5<>''and a6<>''GROUP BY a1,a2